Add conclave TS1 submission#42
Merged
Merged
Conversation
…t, QP weights, global-PIT) tests/test_conclave.py delegates to the pip-installable conclave package (github.com/rhw/conclave, pinned ts1-v1); requirements_conclave.txt installs it + RAIL deps; submit_conclave.yaml runs the CI with PZDC_CI_MAX_TRAIN so the train path subsamples (a full 3-estimator retrain on 100k x4 exceeds the CI budget). Pre-made full-scale estimates + models ship via the release tgz for the estimation-only path. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
… only) Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
eacharles
approved these changes
Jul 7, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
conclave— Task Set 1 submissionconclaveis a committee ensemble of three complementary photo-z estimators — PZFlow, GPz,and FlexZBoost — combined with convex-QP optimal weights (chosen to minimize the ensemble
CDE loss on held-out data) and a global-PIT recalibration, on LSST 6-band + Roman (Y/J/H)
photometry. The QP drives weak members to zero, so the effective committee selects its own members.
Performance (our held-out split, identical metrics, mean over 5 random seeds)
It beats the best single estimator on every metric in both simulations, sits ~10× inside the top
scoring tier on every graded metric (incl. at 1-year depth), and beats every accepted method we
could reproduce through the same rig (KNN −12.2/−13.6, DNF −8.4/−9.6, BPZ −1.1/−2.2, trainZ floor).
Deliverables
tests/test_conclave.py— the tworun_taskset_1_*entry points (+ taskset_2 delegators),delegating to the pip-installable
conclavepackage.requirements_conclave.txt— installsconclave @ git+https://github.com/rhw/conclave@ts1-v1(BSD-3-Clause), which pulls the RAIL estimator stack + qp-prob + tables_io transitively.
.github/workflows/submit_conclave.yaml— CI workflow for this submission.ts1-v1release tarball (SUBMISSION_URL).CI note
The full method trains three estimators on the ~100k training set × 4 sim/scenario, which exceeds
the GitHub-runner budget. The CI workflow sets
PZDC_CI_MAX_TRAIN=4000so the train+estimate pathtrains on a subsample — CI proves the pipeline runs and emits valid
p(z)for every object;estimation runs on the full test set, and the shipped full-scale-trained models/estimates (release
tarball → estimation-only path) carry the real performance.
Validation
The submission passes the upstream harness end-to-end —
run_taskset_1over both simulations andboth depths, all pre-made / estimation-only / train+estimate checks green.
🤖 Generated with Claude Code